package com.stefanie.study.bp;

/**
 * @author: stefanie-zy
 * @time: 2024/7/1-16:32
 * @description: 建造者模式-抽象建造者
 */
public abstract class Builder {

    protected Product product = new Product();

    // 构建方法-具体实现在ConcreateBuilder中
    public abstract void buildPartA(Product product);

    public abstract void buildPartB(Product product);

    public abstract void buildPartC(Product product);

    public abstract void buildPartD(Product product);

    // 返回产品对象
    public Product getProduct() {
        return product;
    }
}
